package cn.hushi.test;

import cn.hushi.domain.Customer;
import cn.hushi.utils.HibernateUtil;
import org.hibernate.Session;
import org.hibernate.Transaction;

public class Demo3 {
    public static void main(String[] args) {
        Demo3 demo1 = new Demo3();
        demo1.test1();
    }
        public void test1(){
            //创建Session对象
            Session session = HibernateUtil.getSession();

            //开启事务
            Transaction tx = session.beginTransaction();

            //执行添加操作 1.save()保存方法
//            Customer customer =new Customer();
//            customer.setName("sian");
//            customer.setAge(40);
//            customer.setGender("男");
//            customer.setLevel("VIP客户");
//            session.save(customer);

            ////执行添加操作 2.update()更新方法
//            Customer customer =new Customer();
//            customer.setId(3);
//            customer.setName("荒天帝");
//            customer.setAge(10000);
//            customer.setGender("男");
//            customer.setLevel("荒神");
//            session.update(customer);

            //执行添加操作 3.saveOrUpdate()保存方法
//            Customer customer =new Customer();
////            这个方法重点是有没有设置ID，设置了就是Updata，没设置就是save
////            customer.setId(5);
//            customer.setName("韩立");
//            customer.setAge(10000);
//            customer.setGender("男");
//            customer.setLevel("韩老魔");
//            session.saveOrUpdate(customer);

//            //执行添加操作 4.delete()删除方法
//            Customer customer =new Customer();
//            customer.setId(7);
//            session.delete(customer);

//            //执行添加操作 5.get()，load()查询方法
            Customer customer = session.get(Customer.class,6);
            System.out.println(customer);
            System.out.println(customer.getName());
            Customer customer1 = session.load(Customer.class,5);
            System.out.println(customer1);
            System.out.println(customer1.getName());

//            //执行添加操作 6.save()保存方法




            //提交事务
            tx.commit();

            //关闭资源
            session.close();

        }
}